package com.cntcdt.api.service;

import java.util.List;

import com.cntcdt.api.db.model.GroupDeviceDayDivideCntDemoModel;
import com.cntcdt.api.db.model.GroupDeviceDayDivideCntModel;

public interface GroupDeviceDayDivideCntDemoService {
	/**
	 * 按照集团id查询昨天数据
	 * @param gourpId
	 * @return
	 */
	public GroupDeviceDayDivideCntDemoModel findByYesterday(int gourpId); 
	
	/**
	 * 按照集团id查询本月数据
	 * @param groupUserId
	 * @return
	 */
    public GroupDeviceDayDivideCntDemoModel findByThisMonth(int groupUserId);
    
    /**
     * 根据集团id查询7天内的数据
     * @param groupUserId
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findByLastSevenDayData(int groupUserId);
    
	/**
	 * 按照集团id查询昨天数据
	 * @param gourpId
	 * @return
	 */
	public GroupDeviceDayDivideCntDemoModel findByYesterday(int gourpId,String terminal); 
	
	/**
	 * 按照集团id查询本月数据
	 * @param groupUserId
	 * @return
	 */
    public GroupDeviceDayDivideCntDemoModel findByThisMonth(int groupUserId,String terminal);
    
    /**
     * 根据集团id查询7天内的数据
     * @param groupUserId
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findByLastSevenDayData(int groupUserId,String terminal);
    
    /**
     * 按天分查询数据
     * @param groupUserId
     * @param sortTime
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findBySortTimeSum(int groupUserId,long sortTime);
    
    /**
     * 按月分查询数据
     * @param groupUserId
     * @param sortTime
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findMonthDataBySortTime(int groupUserId,long sortTime);
    
    /**
     * 按天分查询数据
     * @param groupUserId
     * @param sortTime
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findBySortTimeSum(int groupUserId,long sortTime,String terminal);
   
    /**
     * 查询单台设备指定日期内数据
     * @param groupUserId
     * @param terminal
     * @param startDate
     * @param endDate
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findSingleDeviceByDate(int groupUserId,String terminal,String startDate,String endDate);  
  
    /**
     * 按月分查询数据
     * @param groupUserId
     * @param sortTime
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findMonthDataBySortTime(int groupUserId,long sortTime,String terminal);
    
    /**
     * 查询指定日期数据
     * @param groupUserId
     * @param time
     * @return
     */
    public List<GroupDeviceDayDivideCntDemoModel> findByDateTime(int groupUserId,String time);
    
    /**
     * 查询指定时间段数据
     * 
     */
    public List<GroupDeviceDayDivideCntDemoModel> findByDate(int groupUserId,String startDate,String endDate);
}
